package Servicios;

import DAO.EdificioDAO;
import Entidad.Edificio;
import VO.EdificioVO;
import java.util.ArrayList;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceException;

public class ServicioEdificio {

    EdificioDAO dao = new EdificioDAO();

    public ServicioEdificio() {
    }

    public ArrayList<EdificioVO> listaEdificios(EntityManager em) throws PersistenceException{
        ArrayList<Edificio> edificios = dao.listaActual(em);
        ArrayList<EdificioVO> ret = new ArrayList<EdificioVO>();
        for (Edificio e: edificios){
            EdificioVO u = new EdificioVO(e.getNombre(), e.getNumero());
            ret.add(u);
        }
        return ret;
    }

    public boolean editarEdificio (EdificioVO edificio, EntityManager em){
        Edificio edif = new Edificio(edificio.getNumero(), edificio.getNombre());
        try{
            dao.Actualizar(edif, em);
        }catch (Exception e){
            return false;
        }
        return true;
    }

    Edificio encontrarEdificio(String edificio, EntityManager em) {
        ArrayList<EdificioVO> lista = listaEdificios(em);
        for (EdificioVO u: lista)
            if (u.toString().equals(edificio))
                return new Edificio(u.getNumero(), u.getNombre());
        return null;
    }
}
